#ifndef CBOUNDINGVOLUME_H
#define CBOUNDINGVOLUME_H

#include <string>
#include "cray.h"
#include "cpoint3f.h"

class CBoundingVolume
{
public:
    CBoundingVolume();

    virtual ~CBoundingVolume();

    virtual bool intersect(CRay* pRay) = 0;
    virtual std::string className()=0;

    virtual void        getBoundingBox(CPoint3f& Pmin, CPoint3f& Pmax)=0;

    void*   m_pBoundedObject;
};

#endif // CBOUNDINGVOLUME_H
